package com.ruoyi.amuse.likes.mapper;

import com.ruoyi.amuse.likes.domain.PostLikes;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 点赞管理Mapper接口
 * 
 * @author juwujie
 * @date 2024-07-19
 */
public interface PostLikesMapper 
{
    /**
     * 查询点赞管理
     * 
     * @param likeId 点赞管理主键
     * @return 点赞管理
     */
    public PostLikes selectPostLikesByLikeId(Long likeId);

    /**
     * 查询点赞管理列表
     * 
     * @param postLikes 点赞管理
     * @return 点赞管理集合
     */
    public List<PostLikes> selectPostLikesList(PostLikes postLikes);

    /**
     * 新增点赞管理
     * 
     * @param postLikes 点赞管理
     * @return 结果
     */
    public int insertPostLikes(PostLikes postLikes);

    /**
     * 修改点赞管理
     * 
     * @param postLikes 点赞管理
     * @return 结果
     */
    public int updatePostLikes(PostLikes postLikes);

    /**
     * 删除点赞管理
     *
     * @return 结果
     */
    public int deletePostLikesByLikeId(@Param("postId") Long postId, @Param("userAccount") Long userAccount);

    /**
     * 批量删除点赞管理
     * 
     * @param likeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deletePostLikesByLikeIds(Long[] likeIds);



    /*
    * 计算各个帖子点赞数
    * */
    @Select("select post_id,count(1) as hot from post_likes group by post_id")
    public List<PostLikes> selectPostLikesHot();
}
